﻿#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<map>
using namespace std;


//{
//	//四种插入方式
//	map<string, string> dict;
//	pair<string, string> kv1("first", "第一个");
//	dict.insert(kv1);
//
//	dict.insert(pair < string, string>("second", "第二个"));
//
//	dict.insert(make_pair("sort", "排序"));
//
//	dict.insert({ "auto","自动的" });
//
//	for (const auto& e : dict)
//	{
//		cout << e.first << ":" << e.second << endl;
//	}
//	cout << endl;
//
//	return 0;
//}


//int main()
//{
//    // initializer_list构造及迭代遍历
//
//    map<string, string> dict = { {"left", "左边"}, {"right", "右边"},{"insert", "插⼊"},{ "string", "字符串" } };
//
//    //map<string, string>::iterator it = dict.begin();
//    auto it = dict.begin();
//    while (it != dict.end())
//    {
//        //cout << (*it).first <<":"<<(*it).second << endl;
//
//        // map的迭代基本都使⽤operator->,这⾥省略了⼀个->
//        // 第⼀个->是迭代器运算符重载，返回pair*，第⼆个箭头是结构指针解引⽤取pair数据
//
//        //cout << it.operator->()->first << ":" << it.operator->()>second << endl;
//        cout << it->first << ":" << it->second << endl;
//        ++it;
//    }
//    cout << endl;

int main()
{
	map<string, string> dict;
	dict.insert({ "sort","排序" });
	
	//插入
	dict["auto"];

	//插入加修改
	dict["left"] = "左边";

	//key存在 查找

	dict["left"];

	auto it = dict.begin();
	while (it!= dict.end())
	{	
		cout << it->first << ":" << it->second << endl;
		++it;
	}
	return 0;
}